<!DOCTYPE html>
<html>

<head>
  <title>Quarkus - Configuring Logging</title>
  <script id="adobe_dtm" src="https://www.redhat.com/dtm.js" type="text/javascript"></script>
  <script src="/assets/javascript/highlight.pack.js" type="text/javascript"></script>
  <META HTTP-EQUIV='Content-Security-Policy' CONTENT="default-src 'none'; script-src 'self' 'unsafe-eval' 'sha256-ANpuoVzuSex6VhqpYgsG25OHWVA1I+F6aGU04LoI+5s=' 'sha256-ipy9P/3rZZW06mTLAR0EnXvxSNcnfSDPLDuh3kzbB1w=' js.bizographics.com https://www.redhat.com assets.adobedtm.com jsonip.com https://ajax.googleapis.com https://www.googletagmanager.com https://www.google-analytics.com https://use.fontawesome.com; style-src 'self' https://fonts.googleapis.com https://use.fontawesome.com; img-src 'self' *; media-src 'self' ; frame-src https://www.googletagmanager.com https://www.youtube.com; frame-ancestors 'none'; base-uri 'none'; object-src 'none'; form-action 'none'; font-src 'self' https://use.fontawesome.com https://fonts.gstatic.com;">
  <META HTTP-EQUIV='X-Frame-Options' CONTENT="DENY">
  <META HTTP-EQUIV='X-XSS-Protection' CONTENT="1; mode=block">
  <META HTTP-EQUIV='X-Content-Type-Options' CONTENT="nosniff">
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width, initial-scale=1">
  <meta name="description" content="Quarkus: Supersonic Subatomic Java">
  <meta name="twitter:card" content="summary_large_image">
  <meta name="twitter:site" content="@QuarkusIO"> 
  <meta name="twitter:creator" content="@QuarkusIO">
  <meta property="og:url" content="https://quarkus.io/guides/logging" />
  <meta property="og:title" content="Quarkus - Configuring Logging" />
  <meta property="og:description" content="Quarkus: Supersonic Subatomic Java" />
  <meta property="og:image" content="/assets/images/quarkus_card.png" />
  <link rel="canonical" href="https://quarkus.io/guides/logging">
  <link rel="shortcut icon" type="image/png" href="/favicon.ico" >
  <link rel="stylesheet" href="https://quarkus.io/guides/stylesheet/config.css" />
  <link rel="stylesheet" href="/assets/css/main.css" />
  <link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.1.0/css/all.css" integrity="sha384-lKuwvrZot6UHsBSfcMvOkWwlCMgc0TaWr+30HWe3a4ltaBwTZhyTEggF5tJv8tbt" crossorigin="anonymous">
  <link rel="alternate" type="application/rss+xml"  href="https://quarkus.io/feed.xml" title="Quarkus">
  <script src="https://quarkus.io/assets/javascript/goan.js" type="text/javascript"></script>
  <script src="https://quarkus.io/assets/javascript/hl.js" type="text/javascript"></script>
</head>

<body class="guides">
  <!-- Google Tag Manager (noscript) -->
  <noscript><iframe src="https://www.googletagmanager.com/ns.html?id=GTM-NJWS5L"
  height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript>
  <!-- End Google Tag Manager (noscript) -->

  <div class="nav-wrapper">
  <div class="grid-wrapper">
    <div class="width-12-12">
      <input type="checkbox" id="checkbox" />
      <nav id="main-nav" class="main-nav">
  <div class="container">
    <div class="logo-wrapper">
      
        <a href="/"><img src="/assets/images/quarkus_logo_horizontal_rgb_600px_reverse.png" class="project-logo" title="Quarkus"></a>
      
    </div>
    <label class="nav-toggle" for="checkbox">
      <i class="fa fa-bars"></i>
    </label>
    <div id="menu" class="menu">
      <span>
        <a href="/get-started/" class="">Get Started</a>
      </span>
      <span>
        <a href="/guides/" class="active">Guides</a>
      </span>
      <span>
        <a href="/community/" class="">Community</a>
      </span>
      <span>
        <a href="/support/" class="">Support</a>
      </span>
      <span>
        <a href="/blog/" class="">Blog</a>
      </span>
      <span>
        <a href="https://code.quarkus.io" class="button-cta secondary white">Start Coding</a>
      </span>
    </div>
  </div>
      </nav>
    </div>
  </div>
</div>

  <div class="content">
    <div class="guide">
  <div class="width-12-12">
    <h1 class="text-caps">Quarkus - Configuring Logging</h1>
    <div class="hide-mobile toc"><ul class="sectlevel1">
<li><a href="#supported-logging-apis">Supported Logging APIs</a>
<ul class="sectlevel2">
<li><a href="#what-about-apache-log4j">What about Apache Log4j ?</a></li>
</ul>
</li>
<li><a href="#logging-levels">Logging levels</a></li>
<li><a href="#runtime-configuration">Runtime configuration</a>
<ul class="sectlevel2">
<li><a href="#logging-categories">Logging categories</a></li>
<li><a href="#root-logger-configuration">Root logger configuration</a></li>
</ul>
</li>
<li><a href="#logging-format">Logging Format</a>
<ul class="sectlevel2">
<li><a href="#alt-console-format">Alternative Console Logging Formats</a></li>
</ul>
</li>
<li><a href="#log-handlers">Log Handlers</a>
<ul class="sectlevel2">
<li><a href="#console-log-handler">Console log handler</a></li>
<li><a href="#file-log-handler">File log handler</a></li>
<li><a href="#syslog-log-handler">Syslog log handler</a></li>
</ul>
</li>
<li><a href="#examples">Examples</a></li>
<li><a href="#centralized-log-management">Centralized Log Management</a></li>
<li><a href="#how-to-configure-logging-for-quarkustest">How to Configure Logging for <code>@QuarkusTest</code></a></li>
<li><a href="#logging-adapters">Logging Adapters</a></li>
<li><a href="#loggingConfigurationReference">Logging configuration reference</a></li>
</ul></div>
    <div>
      <div id="preamble">
<div class="sectionbody">
<div class="paragraph">
<p>This guide explains logging and how to configure it.</p>
</div>
<div class="paragraph">
<p>Internally, Quarkus uses JBoss Log Manager and the JBoss Logging facade.<br>
You can use the JBoss Logging facade inside your code as it&#8217;s already provided,
or any of the supported Logging API listed in the next chapter as Quarkus will send them to JBoss Log Manager.</p>
</div>
<div class="paragraph">
<p>All the logging configuration will then be done inside your <code>application.properties</code>.</p>
</div>
</div>
</div>
<div class="sect1">
<h2 id="supported-logging-apis"><a class="anchor" href="#supported-logging-apis"></a>Supported Logging APIs</h2>
<div class="sectionbody">
<div class="paragraph">
<p>Applications and components may use any of the following APIs for logging, and the logs will be merged:</p>
</div>
<div class="ulist">
<ul>
<li>
<p>JDK <code>java.util.logging</code> (also called JUL)</p>
</li>
<li>
<p><a href="https://github.com/jboss-logging/jboss-logging">JBoss Logging</a></p>
</li>
<li>
<p><a href="https://www.slf4j.org/">SLF4J</a></p>
</li>
<li>
<p><a href="https://commons.apache.org/proper/commons-logging/">Apache Commons Logging</a></p>
</li>
</ul>
</div>
<div class="paragraph">
<p>Internally Quarkus uses JBoss Logging; you can also use it inside your application so that no other dependencies should be added for your logs.</p>
</div>
<div class="listingblock">
<div class="content">
<pre class="highlightjs highlight"><code data-lang="java" class="language-java hljs">import org.jboss.logging.Logger;

import javax.ws.rs.GET;
import javax.ws.rs.Path;
import javax.ws.rs.Produces;
import javax.ws.rs.core.MediaType;

@Path("/hello")
public class ExampleResource {

    private static final Logger LOG = Logger.getLogger(ExampleResource.class);

    @GET
    @Produces(MediaType.TEXT_PLAIN)
    public String hello() {
        LOG.info("Hello");
        return "hello";
    }
}</code></pre>
</div>
</div>
<div class="admonitionblock note">
<table>
<tr>
<td class="icon">
<i class="fa icon-note" title="Note"></i>
</td>
<td class="content">
If you use JBoss Logging but one of your libraries uses a different logging API, you may need to configure a <a href="#logging-adapters">Logging Adapter</a>.
</td>
</tr>
</table>
</div>
<div class="sect2">
<h3 id="what-about-apache-log4j"><a class="anchor" href="#what-about-apache-log4j"></a>What about Apache Log4j ?</h3>
<div class="paragraph">
<p><a href="https://logging.apache.org/log4j/2.x/">Log4j</a> is a logging implementation: it contains a logging backend and a logging facade.
Quarkus uses the JBoss Log Manager backend, so you will need to include the <code>log4j2-jboss-logmanager</code> library to route Log4j logs to JBoss Log Manager.</p>
</div>
<div class="listingblock">
<div class="content">
<pre class="highlightjs highlight"><code data-lang="xml" class="language-xml hljs">    &lt;dependency&gt;
      &lt;groupId&gt;org.jboss.logmanager&lt;/groupId&gt;
      &lt;artifactId&gt;log4j2-jboss-logmanager&lt;/artifactId&gt; <i class="conum" data-value="1"></i><b>(1)</b>
    &lt;/dependency&gt;</code></pre>
</div>
</div>
<div class="colist arabic">
<table>
<tr>
<td><i class="conum" data-value="1"></i><b>1</b></td>
<td>This is the library needed for Log2J version 2; if you use the legacy Log4J version 1 you need to use <code>log4j-jboss-logmanager</code> instead.</td>
</tr>
</table>
</div>
<div class="paragraph">
<p>You can then use the Log4J API inside your application.</p>
</div>
<div class="admonitionblock warning">
<table>
<tr>
<td class="icon">
<i class="fa icon-warning" title="Warning"></i>
</td>
<td class="content">
Do not include any Log4j dependencies. The <code>log4j2-jboss-logmanager</code> library includes what&#8217;s needed to use Log4j as a logging facade.
</td>
</tr>
</table>
</div>
</div>
</div>
</div>
<div class="sect1">
<h2 id="logging-levels"><a class="anchor" href="#logging-levels"></a>Logging levels</h2>
<div class="sectionbody">
<div class="paragraph">
<p>These are the log levels used by Quarkus:</p>
</div>
<div class="hdlist">
<table>
<tr>
<td class="hdlist1">
OFF
</td>
<td class="hdlist2">
<p>Special level to turn off logging.</p>
</td>
</tr>
<tr>
<td class="hdlist1">
FATAL
</td>
<td class="hdlist2">
<p>A critical service failure/complete inability to service requests of any kind.</p>
</td>
</tr>
<tr>
<td class="hdlist1">
ERROR
</td>
<td class="hdlist2">
<p>A significant disruption in a request or the inability to service a request.</p>
</td>
</tr>
<tr>
<td class="hdlist1">
WARN
</td>
<td class="hdlist2">
<p>A non-critical service error or problem that may not require immediate correction.</p>
</td>
</tr>
<tr>
<td class="hdlist1">
INFO
</td>
<td class="hdlist2">
<p>Service lifecycle events or important related very-low-frequency information.</p>
</td>
</tr>
<tr>
<td class="hdlist1">
DEBUG
</td>
<td class="hdlist2">
<p>Messages that convey extra information regarding lifecycle or non-request-bound events which may be helpful for debugging.</p>
</td>
</tr>
<tr>
<td class="hdlist1">
TRACE
</td>
<td class="hdlist2">
<p>Messages that convey extra per-request debugging information that may be very high frequency.</p>
</td>
</tr>
<tr>
<td class="hdlist1">
ALL
</td>
<td class="hdlist2">
<p>Special level for all messages including custom levels.</p>
</td>
</tr>
</table>
</div>
<div class="paragraph">
<p>In addition, the following levels may be configured for applications and libraries using <a href="https://docs.oracle.com/javase/8/docs/api/java/util/logging/Level.html"><code>java.util.logging</code></a>:</p>
</div>
<div class="hdlist">
<table>
<tr>
<td class="hdlist1">
SEVERE
</td>
<td class="hdlist2">
<p>Same as <strong>ERROR</strong>.</p>
</td>
</tr>
<tr>
<td class="hdlist1">
WARNING
</td>
<td class="hdlist2">
<p>Same as <strong>WARN</strong>.</p>
</td>
</tr>
<tr>
<td class="hdlist1">
CONFIG
</td>
<td class="hdlist2">
<p>Service configuration information.</p>
</td>
</tr>
<tr>
<td class="hdlist1">
FINE
</td>
<td class="hdlist2">
<p>Same as <strong>DEBUG</strong>.</p>
</td>
</tr>
<tr>
<td class="hdlist1">
FINER
</td>
<td class="hdlist2">
<p>Same as <strong>TRACE</strong>.</p>
</td>
</tr>
<tr>
<td class="hdlist1">
FINEST
</td>
<td class="hdlist2">
<p>Event more debugging information than <code>TRACE</code>, maybe with even higher frequency.</p>
</td>
</tr>
</table>
</div>
</div>
</div>
<div class="sect1">
<h2 id="runtime-configuration"><a class="anchor" href="#runtime-configuration"></a>Runtime configuration</h2>
<div class="sectionbody">
<div class="paragraph">
<p>Run time logging is configured in the <code>application.properties</code> file,
for example, to set the default log level to <code>INFO</code> logging and include Hibernate <code>DEBUG</code> logs:</p>
</div>
<div class="listingblock">
<div class="content">
<pre class="highlightjs highlight"><code data-lang="properties" class="language-properties hljs">quarkus.log.level=INFO
quarkus.log.category."org.hibernate".level=DEBUG</code></pre>
</div>
</div>
<div class="paragraph">
<p>All possible properties are listed in <a href="#loggingConfigurationReference">the logging configuration reference</a>.</p>
</div>
<div class="admonitionblock note">
<table>
<tr>
<td class="icon">
<i class="fa icon-note" title="Note"></i>
</td>
<td class="content">
If you are adding these properties via command line make sure <code>"</code> is escaped.
For example <code>-Dquarkus.log.category.\"org.hibernate\".level=DEBUG</code>.
</td>
</tr>
</table>
</div>
<div class="sect2">
<h3 id="logging-categories"><a class="anchor" href="#logging-categories"></a>Logging categories</h3>
<div class="paragraph">
<p>Logging is done on a per-category basis.  Each category can be independently configured.
A configuration which applies to a category will also apply to all sub-categories of that category,
unless there is a more specific matching sub-category configuration.
For every category the same settings that are configured on ( console / file / syslog ) apply.
These can also be overridden by attaching a one or more named handlers to a category. See example in <a href="#category-named-handlers-example">Named handlers attached to a category</a></p>
</div>
<table class="tableblock frame-all grid-all stretch">
<colgroup>
<col style="width: 25%;">
<col style="width: 25%;">
<col style="width: 50%;">
</colgroup>
<thead>
<tr>
<th class="tableblock halign-left valign-top">Property Name</th>
<th class="tableblock halign-left valign-top">Default</th>
<th class="tableblock halign-left valign-top">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>quarkus.log.category."&lt;category-name&gt;".level</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>INFO <sup class="footnote">[<a id="_footnoteref_1" class="footnote" href="#_footnotedef_1" title="View footnote.">1</a>]</sup></code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">The level to use to configure the category named <code>&lt;category-name&gt;</code>.  The quotes are necessary.</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>quarkus.log.category."&lt;category-name&gt;".use-parent-handlers</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Specify whether or not this logger should send its output to its parent logger.</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>quarkus.log.category."&lt;category-name&gt;".handlers=[&lt;handler&gt;]</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>empty <sup class="footnote">[<a id="_footnoteref_2" class="footnote" href="#_footnotedef_2" title="View footnote.">2</a>]</sup></code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">The names of the handlers that you want to attach to a specific category.</p></td>
</tr>
</tbody>
</table>
<div class="admonitionblock note">
<table>
<tr>
<td class="icon">
<i class="fa icon-note" title="Note"></i>
</td>
<td class="content">
The quotes shown in the property name are required as categories normally contain '.' which must
be escaped. An example is shown in <a href="#category-example">File TRACE Logging Configuration</a>.
</td>
</tr>
</table>
</div>
</div>
<div class="sect2">
<h3 id="root-logger-configuration"><a class="anchor" href="#root-logger-configuration"></a>Root logger configuration</h3>
<div class="paragraph">
<p>The root logger category is handled separately, and is configured via the following properties:</p>
</div>
<table class="tableblock frame-all grid-all stretch">
<colgroup>
<col style="width: 25%;">
<col style="width: 25%;">
<col style="width: 50%;">
</colgroup>
<thead>
<tr>
<th class="tableblock halign-left valign-top">Property Name</th>
<th class="tableblock halign-left valign-top">Default</th>
<th class="tableblock halign-left valign-top">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>quarkus.log.level</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>INFO</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">The default minimum log level for every log category.</p></td>
</tr>
</tbody>
</table>
<div class="paragraph">
<p>If no level configuration exists for a given logger category, the enclosing (parent) category is examined. If no categories are configured which enclose the category in question, then the root logger configuration is used.</p>
</div>
</div>
</div>
</div>
<div class="sect1">
<h2 id="logging-format"><a class="anchor" href="#logging-format"></a>Logging Format</h2>
<div class="sectionbody">
<div class="paragraph">
<p>By default, Quarkus uses a pattern-based logging formatter that generates human-readable text logs.</p>
</div>
<div class="paragraph">
<p>You can configure the format for each log handler via a dedicated property.
For the console handler, the property is <code>quarkus.log.console.format</code>.</p>
</div>
<div class="paragraph">
<p>The logging format string supports the following symbols:</p>
</div>
<table class="tableblock frame-all grid-all stretch">
<colgroup>
<col style="width: 11.1111%;">
<col style="width: 33.3333%;">
<col style="width: 55.5556%;">
</colgroup>
<thead>
<tr>
<th class="tableblock halign-left valign-top">Symbol</th>
<th class="tableblock halign-left valign-top">Summary</th>
<th class="tableblock halign-left valign-top">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>%%</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>%</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Renders a simple <code>%</code> character.</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>%c</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Category</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Renders the category name.</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>%C</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Source class</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Renders the source class name.<sup class="footnote" id="_footnote_calc">[<a id="_footnoteref_3" class="footnote" href="#_footnotedef_3" title="View footnote.">3</a>]</sup></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>%d{xxx}</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Date</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Renders a date with the given date format string, which uses the syntax defined by <code>java.text.SimpleDateFormat</code>.</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>%e</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Exception</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Renders the thrown exception, if any.</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>%F</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Source file</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Renders the source file name.<sup class="footnoteref">[<a class="footnote" href="#_footnotedef_3" title="View footnote.">3</a>]</sup></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>%h</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Host name</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Renders the system simple host name.</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>%H</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Qualified host name</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Renders the system&#8217;s fully qualified host name, which may be the same as the simple host name, depending on OS configuration.</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>%i</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Process ID</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Render the current process PID.</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>%l</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Source location</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Renders the source location information, which includes source file name, line number, class name, and method name.<sup class="footnoteref">[<a class="footnote" href="#_footnotedef_3" title="View footnote.">3</a>]</sup></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>%L</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Source line</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Renders the source line number.<sup class="footnoteref">[<a class="footnote" href="#_footnotedef_3" title="View footnote.">3</a>]</sup></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>%m</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Full Message</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Renders the log message plus exception (if any).</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>%M</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Source method</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Renders the source method name.<sup class="footnoteref">[<a class="footnote" href="#_footnotedef_3" title="View footnote.">3</a>]</sup></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>%n</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Newline</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Renders the platform-specific line separator string.</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>%N</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Process name</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Render the name of the current process.</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>%p</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Level</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Render the log level of the message.</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>%r</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Relative time</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Render the time in milliseconds since the start of the application log.</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>%s</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Simple message</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Renders just the log message, with no exception trace.</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>%t</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Thread name</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Render the thread name.</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>%t{id}</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Thread ID</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Render the thread ID.</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>%z{&lt;zone name&gt;}</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Time zone</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Set the time zone of the output to <code>&lt;zone name&gt;</code>.</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>%X{&lt;MDC property name&gt;}</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Mapped Diagnostics Context Value</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Renders the value from Mapped Diagnostics Context</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>%X</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Mapped Diagnostics Context Values</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Renders all the values from Mapped Diagnostics Context in format {property.key=property.value}</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>%x</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Nested Diagnostics context values</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Renders all the values from Nested Diagnostics Context in format {value1.value2}</p></td>
</tr>
</tbody>
</table>
<div class="sect2">
<h3 id="alt-console-format"><a class="anchor" href="#alt-console-format"></a>Alternative Console Logging Formats</h3>
<div class="paragraph">
<p>It is possible to change the output format of the console log. This can be useful in environments where the output
of the Quarkus application is captured by a service which can, for example, process and store the log information for
later analysis.</p>
</div>
<div class="sect3">
<h4 id="json-logging"><a class="anchor" href="#json-logging"></a>JSON Logging Format</h4>
<div class="paragraph">
<p>In order to configure the JSON logging format, the <code>quarkus-logging-json</code> extension may be employed.  Add this extension to your
application POM as the following snippet illustrates.</p>
</div>
<div class="listingblock">
<div class="title">Modifications to POM file to add the JSON logging extension</div>
<div class="content">
<pre class="highlightjs highlight"><code data-lang="xml" class="language-xml hljs">  &lt;dependencies&gt;
    &lt;!-- ... your other dependencies are here ... --&gt;
    &lt;dependency&gt;
      &lt;groupId&gt;io.quarkus&lt;/groupId&gt;
      &lt;artifactId&gt;quarkus-logging-json&lt;/artifactId&gt;
    &lt;/dependency&gt;
  &lt;/dependencies&gt;</code></pre>
</div>
</div>
<div class="paragraph">
<p>The presence of this extension will, by default, replace the output format configuration from the console configuration.
This means that the format string and the color settings (if any) will be ignored.  The other console configuration items
(including those controlling asynchronous logging and the log level) will continue to be applied.</p>
</div>
<div class="paragraph">
<p>For some, it will make sense to use logging that is humanly readable (unstructured) in dev mode and JSON logging (structured) in production mode. This can be achieved using different profiles, as shown in the following configuration.</p>
</div>
<div class="listingblock">
<div class="title">Disable JSON logging in application.properties for dev and test mode</div>
<div class="content">
<pre class="highlightjs highlight"><code data-lang="properties" class="language-properties hljs">%dev.quarkus.log.console.json=false
%test.quarkus.log.console.json=false</code></pre>
</div>
</div>
<div class="sect4">
<h5 id="configuration"><a class="anchor" href="#configuration"></a>Configuration</h5>
<div class="paragraph">
<p>The JSON logging extension can be configured in various ways.  The following properties are supported:</p>
</div>
<div class="paragraph configuration-legend">
<p><span class="icon"><i class="fa fa-lock" title="Fixed at build time"></i></span> Configuration property fixed at build time - All other configuration properties are overridable at runtime</p>
</div>
<table class="tableblock frame-all grid-all stretch configuration-reference searchable">
<colgroup>
<col style="width: 80%;">
<col style="width: 10%;">
<col style="width: 10%;">
</colgroup>
<tbody>
<tr>
<th class="tableblock halign-left valign-top"><p class="tableblock"><a id="quarkus-logging-json_configuration"></a><a href="#quarkus-logging-json_configuration">Configuration property</a></p></th>
<th class="tableblock halign-left valign-middle"><p class="tableblock">Type</p></th>
<th class="tableblock halign-left valign-middle"><p class="tableblock">Default</p></th>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a id="quarkus-logging-json_quarkus.log.console.json"></a><code><a href="#quarkus-logging-json_quarkus.log.console.json">quarkus.log.console.json</a></code></p>
</div>
<div class="openblock description">
<div class="content">
<div class="paragraph">
<p>Determine whether to enable the JSON console formatting extension, which disables "normal" console formatting.</p>
</div>
</div>
</div></div></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock">boolean</p></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock"><code>true</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a id="quarkus-logging-json_quarkus.log.console.json.pretty-print"></a><code><a href="#quarkus-logging-json_quarkus.log.console.json.pretty-print">quarkus.log.console.json.pretty-print</a></code></p>
</div>
<div class="openblock description">
<div class="content">
<div class="paragraph">
<p>Enable "pretty printing" of the JSON record. Note that some JSON parsers will fail to read pretty printed output.</p>
</div>
</div>
</div></div></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock">boolean</p></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock"><code>false</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a id="quarkus-logging-json_quarkus.log.console.json.date-format"></a><code><a href="#quarkus-logging-json_quarkus.log.console.json.date-format">quarkus.log.console.json.date-format</a></code></p>
</div>
<div class="openblock description">
<div class="content">
<div class="paragraph">
<p>The date format to use. The special string "default" indicates that the default format should be used.</p>
</div>
</div>
</div></div></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock"><code>default</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a id="quarkus-logging-json_quarkus.log.console.json.record-delimiter"></a><code><a href="#quarkus-logging-json_quarkus.log.console.json.record-delimiter">quarkus.log.console.json.record-delimiter</a></code></p>
</div>
<div class="openblock description">
<div class="content">
<div class="paragraph">
<p>The special end-of-record delimiter to be used. By default, no delimiter is used.</p>
</div>
</div>
</div></div></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-middle"></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a id="quarkus-logging-json_quarkus.log.console.json.zone-id"></a><code><a href="#quarkus-logging-json_quarkus.log.console.json.zone-id">quarkus.log.console.json.zone-id</a></code></p>
</div>
<div class="openblock description">
<div class="content">
<div class="paragraph">
<p>The zone ID to use. The special string "default" indicates that the default zone should be used.</p>
</div>
</div>
</div></div></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock"><code>default</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a id="quarkus-logging-json_quarkus.log.console.json.exception-output-type"></a><code><a href="#quarkus-logging-json_quarkus.log.console.json.exception-output-type">quarkus.log.console.json.exception-output-type</a></code></p>
</div>
<div class="openblock description">
<div class="content">
<div class="paragraph">
<p>The exception output type to specify.</p>
</div>
</div>
</div></div></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock"><code>detailed</code>, <code>formatted</code>, <code>detailed-and-formatted</code></p></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock"><code>detailed</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a id="quarkus-logging-json_quarkus.log.console.json.print-details"></a><code><a href="#quarkus-logging-json_quarkus.log.console.json.print-details">quarkus.log.console.json.print-details</a></code></p>
</div>
<div class="openblock description">
<div class="content">
<div class="paragraph">
<p>Enable printing of more details in the log.
 Printing the details can be expensive as the values are retrieved from the caller. The details include the source class name, source file name, source method name and source line number.</p>
</div>
</div>
</div></div></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock">boolean</p></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock"><code>false</code></p></td>
</tr>
</tbody>
</table>
<div class="admonitionblock warning">
<table>
<tr>
<td class="icon">
<i class="fa icon-warning" title="Warning"></i>
</td>
<td class="content">
Enabling pretty printing might cause certain processors and JSON parsers to fail.
</td>
</tr>
</table>
</div>
<div class="admonitionblock note">
<table>
<tr>
<td class="icon">
<i class="fa icon-note" title="Note"></i>
</td>
<td class="content">
Printing the details can be expensive as the values are retrieved from the caller. The details include the
source class name, source file name, source method name and source line number.
</td>
</tr>
</table>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="sect1">
<h2 id="log-handlers"><a class="anchor" href="#log-handlers"></a>Log Handlers</h2>
<div class="sectionbody">
<div class="paragraph">
<p>A log handler is a logging component responsible for the emission of log events to a recipient.
Quarkus comes with three different log handlers: <strong>console</strong>, <strong>file</strong> and <strong>syslog</strong>.</p>
</div>
<div class="sect2">
<h3 id="console-log-handler"><a class="anchor" href="#console-log-handler"></a>Console log handler</h3>
<div class="paragraph">
<p>The console log handler is enabled by default.  It outputs all log events to the console of your application (typically to the system&#8217;s <code>stdout</code>).</p>
</div>
<div class="paragraph">
<p>For details of its configuration options, see <a href="#quarkus-log-logging-log-config_quarkus.log.console">the Console Logging configuration reference</a>.</p>
</div>
</div>
<div class="sect2">
<h3 id="file-log-handler"><a class="anchor" href="#file-log-handler"></a>File log handler</h3>
<div class="paragraph">
<p>The file log handler is disabled by default. It outputs all log events to a file on the application&#8217;s host.
It supports log file rotation.</p>
</div>
<div class="paragraph">
<p>For details of its configuration options, see <a href="#quarkus-log-logging-log-config_quarkus.log.file">the File Logging configuration reference</a>.</p>
</div>
</div>
<div class="sect2">
<h3 id="syslog-log-handler"><a class="anchor" href="#syslog-log-handler"></a>Syslog log handler</h3>
<div class="paragraph">
<p><a href="https://en.wikipedia.org/wiki/Syslog">Syslog</a> is a protocol for sending log messages on Unix-like systems using a protocol defined by <a href="https://tools.ietf.org/html/rfc5424">RFC 5424</a>.</p>
</div>
<div class="paragraph">
<p>The syslog handler sends all log events to a syslog server (by default, the syslog server that is local to the application).
It is disabled by default.</p>
</div>
<div class="paragraph">
<p>For details of its configuration options, see <a href="#quarkus-log-logging-log-config_quarkus.log.syslog">the Syslog Logging configuration reference</a>.</p>
</div>
</div>
</div>
</div>
<div class="sect1">
<h2 id="examples"><a class="anchor" href="#examples"></a>Examples</h2>
<div class="sectionbody">
<div class="listingblock">
<div class="title">Console DEBUG Logging except for Quarkus logs (INFO), No color, Shortened Time, Shortened Category Prefixes</div>
<div class="content">
<pre class="highlightjs highlight"><code data-lang="properties" class="language-properties hljs">quarkus.log.console.format=%d{HH:mm:ss} %-5p [%c{2.}] (%t) %s%e%n
quarkus.log.console.level=DEBUG
quarkus.log.console.color=false

quarkus.log.category."io.quarkus".level=INFO</code></pre>
</div>
</div>
<div class="admonitionblock note">
<table>
<tr>
<td class="icon">
<i class="fa icon-note" title="Note"></i>
</td>
<td class="content">
If you are adding these properties via command line make sure <code>"</code> is escaped.
For example <code>-Dquarkus.log.category.\"io.quarkus\".level=DEBUG</code>.
</td>
</tr>
</table>
</div>
<div id="category-example" class="listingblock">
<div class="title">File TRACE Logging Configuration</div>
<div class="content">
<pre class="highlightjs highlight"><code data-lang="properties" class="language-properties hljs">quarkus.log.file.enable=true
# Send output to a trace.log file under the /tmp directory
quarkus.log.file.path=/tmp/trace.log
quarkus.log.file.level=TRACE
quarkus.log.file.format=%d{HH:mm:ss} %-5p [%c{2.}] (%t) %s%e%n
# Set 2 categories (io.quarkus.smallrye.jwt, io.undertow.request.security) to TRACE level
quarkus.log.category."io.quarkus.smallrye.jwt".level=TRACE
quarkus.log.category."io.undertow.request.security".level=TRACE</code></pre>
</div>
</div>
<div class="admonitionblock note">
<table>
<tr>
<td class="icon">
<i class="fa icon-note" title="Note"></i>
</td>
<td class="content">
As we don&#8217;t change the root logger, console log will only contain <code>INFO</code> or higher order logs.
</td>
</tr>
</table>
</div>
<div id="category-named-handlers-example" class="listingblock">
<div class="title">Named handlers attached to a category</div>
<div class="content">
<pre class="highlightjs highlight"><code data-lang="properties" class="language-properties hljs"># Send output to the console
quarkus.log.file.path=/tmp/trace.log
quarkus.log.console.format=%d{HH:mm:ss} %-5p [%c{2.}] (%t) %s%e%n
# Configure a named handler that logs to console
quarkus.log.handler.console."STRUCTURED_LOGGING".format=%e%n
# Configure a named handler that logs to file
quarkus.log.handler.file."STRUCTURED_LOGGING_FILE".enable=true
quarkus.log.handler.file."STRUCTURED_LOGGING_FILE".format=%e%n
# Configure the category and link the two named handlers to it
quarkus.log.category."io.quarkus.category".level=INFO
quarkus.log.category."io.quarkus.category".handlers=STRUCTURED_LOGGING,STRUCTURED_LOGGING_FILE</code></pre>
</div>
</div>
</div>
</div>
<div class="sect1">
<h2 id="centralized-log-management"><a class="anchor" href="#centralized-log-management"></a>Centralized Log Management</h2>
<div class="sectionbody">
<div class="paragraph">
<p>If you want to send your logs to a centralized tool like Graylog, Logstash or Fluentd, you can follow the <a href="centralized-log-management">Centralized log management guide</a>.</p>
</div>
</div>
</div>
<div class="sect1">
<h2 id="how-to-configure-logging-for-quarkustest"><a class="anchor" href="#how-to-configure-logging-for-quarkustest"></a>How to Configure Logging for <code>@QuarkusTest</code></h2>
<div class="sectionbody">
<div class="paragraph">
<p>If you want to configure logging for your <code>@QuarkusTest</code>, don&#8217;t forget to set up the <code>maven-surefire-plugin</code> accordingly.
In particular, you need to set the appropriate <code>LogManager</code> using the <code>java.util.logging.manager</code> system property.</p>
</div>
<div class="listingblock">
<div class="title">Example Configuration</div>
<div class="content">
<pre class="highlightjs highlight"><code data-lang="xml" class="language-xml hljs">&lt;build&gt;
  &lt;plugins&gt;
    &lt;plugin&gt;
      &lt;artifactId&gt;maven-surefire-plugin&lt;/artifactId&gt;
      &lt;version&gt;${surefire-plugin.version}&lt;/version&gt;
      &lt;configuration&gt;
        &lt;systemPropertyVariables&gt;
          &lt;java.util.logging.manager&gt;org.jboss.logmanager.LogManager&lt;/java.util.logging.manager&gt; <i class="conum" data-value="1"></i><b>(1)</b>
          &lt;quarkus.log.level&gt;DEBUG&lt;/quarkus.log.level&gt;  <i class="conum" data-value="2"></i><b>(2)</b>
          &lt;maven.home&gt;${maven.home}&lt;/maven.home&gt;
        &lt;/systemPropertyVariables&gt;
      &lt;/configuration&gt;
    &lt;/plugin&gt;
  &lt;/plugins&gt;
&lt;/build&gt;</code></pre>
</div>
</div>
<div class="colist arabic">
<table>
<tr>
<td><i class="conum" data-value="1"></i><b>1</b></td>
<td>Make sure the <code>org.jboss.logmanager.LogManager</code> is used.</td>
</tr>
<tr>
<td><i class="conum" data-value="2"></i><b>2</b></td>
<td>Enable debug logging for all logging categories.</td>
</tr>
</table>
</div>
<div class="paragraph">
<p>If you are using Gradle, add this to your <code>build.gradle</code>:</p>
</div>
<div class="listingblock">
<div class="content">
<pre class="highlightjs highlight"><code data-lang="groovy" class="language-groovy hljs">test {
	systemProperty "java.util.logging.manager", "org.jboss.logmanager.LogManager"
}</code></pre>
</div>
</div>
<div class="paragraph">
<p>See also: <a href="getting-started-testing#test-from-ide">Running <code>@QuarkusTest</code> from an IDE</a></p>
</div>
</div>
</div>
<div class="sect1">
<h2 id="logging-adapters"><a class="anchor" href="#logging-adapters"></a>Logging Adapters</h2>
<div class="sectionbody">
<div class="paragraph">
<p>Quarkus relies on the JBoss Logging library for all the logging requirements.</p>
</div>
<div class="paragraph">
<p>If you are using libraries that have dependencies on other logging libraries such as Apache Commons Logging, Log4j or Slf4j, you need to exclude them from the dependencies and use one of the adapters provided by JBoss Logging.</p>
</div>
<div class="paragraph">
<p>This is especially important when building native executables as you could encounter issues similar to the following when compiling the native executable:</p>
</div>
<div class="listingblock">
<div class="content">
<pre class="highlightjs highlight"><code class="language-none hljs">Caused by java.lang.ClassNotFoundException: org.apache.commons.logging.impl.LogFactoryImpl</code></pre>
</div>
</div>
<div class="paragraph">
<p>This is due to the logging implementation not being included in the native executable.
Using the JBoss Logging adapters will solve this problem.</p>
</div>
<div class="paragraph">
<p>These adapters are available for most of the common Open Source logging components, such as Apache Commons Logging:</p>
</div>
<div class="listingblock">
<div class="content">
<pre class="highlightjs highlight"><code data-lang="xml" class="language-xml hljs">&lt;dependency&gt;
    &lt;groupId&gt;org.jboss.logging&lt;/groupId&gt;
    &lt;artifactId&gt;commons-logging-jboss-logging&lt;/artifactId&gt;
&lt;/dependency&gt;</code></pre>
</div>
</div>
<div class="paragraph">
<p>JDK Logging:</p>
</div>
<div class="listingblock">
<div class="content">
<pre class="highlightjs highlight"><code data-lang="xml" class="language-xml hljs">&lt;dependency&gt;
    &lt;groupId&gt;org.jboss.logging&lt;/groupId&gt;
    &lt;artifactId&gt;jboss-logging-jdk&lt;/artifactId&gt;
&lt;/dependency&gt;</code></pre>
</div>
</div>
<div class="paragraph">
<p>Log4j:</p>
</div>
<div class="listingblock">
<div class="content">
<pre class="highlightjs highlight"><code data-lang="xml" class="language-xml hljs">&lt;dependency&gt;
    &lt;groupId&gt;org.jboss.logging&lt;/groupId&gt;
    &lt;artifactId&gt;jboss-logging-log4j&lt;/artifactId&gt;
&lt;/dependency&gt;</code></pre>
</div>
</div>
<div class="paragraph">
<p>Log4j2:</p>
</div>
<div class="listingblock">
<div class="content">
<pre class="highlightjs highlight"><code data-lang="xml" class="language-xml hljs">&lt;dependency&gt;
    &lt;groupId&gt;org.jboss.logging&lt;/groupId&gt;
    &lt;artifactId&gt;log4j2-jboss-logmanager&lt;/artifactId&gt;
&lt;/dependency&gt;</code></pre>
</div>
</div>
<div class="paragraph">
<p>And Slf4j:</p>
</div>
<div class="listingblock">
<div class="content">
<pre class="highlightjs highlight"><code data-lang="xml" class="language-xml hljs">&lt;dependency&gt;
    &lt;groupId&gt;org.jboss.slf4j&lt;/groupId&gt;
    &lt;artifactId&gt;slf4j-jboss-logging&lt;/artifactId&gt;
&lt;/dependency&gt;</code></pre>
</div>
</div>
<div class="admonitionblock note">
<table>
<tr>
<td class="icon">
<i class="fa icon-note" title="Note"></i>
</td>
<td class="content">
This is not needed for libraries that are dependencies of a Quarkus extension as the extension will take care of this for you.
</td>
</tr>
</table>
</div>
</div>
</div>
<div class="sect1">
<h2 id="loggingConfigurationReference"><a class="anchor" href="#loggingConfigurationReference"></a>Logging configuration reference</h2>
<div class="sectionbody">
<div class="paragraph configuration-legend">
<p><span class="icon"><i class="fa fa-lock" title="Fixed at build time"></i></span> Configuration property fixed at build time - All other configuration properties are overridable at runtime</p>
</div>
<table class="tableblock frame-all grid-all stretch configuration-reference">
<colgroup>
<col style="width: 80%;">
<col style="width: 10%;">
<col style="width: 10%;">
</colgroup>
<tbody>
<tr>
<th class="tableblock halign-left valign-top"><p class="tableblock"><a id="quarkus-log-logging-log-config_configuration"></a><a href="#quarkus-log-logging-log-config_configuration">Configuration property</a></p></th>
<th class="tableblock halign-left valign-middle"><p class="tableblock">Type</p></th>
<th class="tableblock halign-left valign-middle"><p class="tableblock">Default</p></th>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a id="quarkus-log-logging-log-config_quarkus.log.level"></a><code><a href="#quarkus-log-logging-log-config_quarkus.log.level">quarkus.log.level</a></code></p>
</div>
<div class="openblock description">
<div class="content">
<div class="paragraph">
<p>The log level of the root category, which is used as the default log level for all categories.</p>
</div>
<div class="paragraph">
<p>JBoss Logging supports Apache style log levels:</p>
</div>
<div class="ulist">
<ul>
<li>
<p>{@link org.jboss.logmanager.Level#FATAL}</p>
</li>
<li>
<p>{@link org.jboss.logmanager.Level#ERROR}</p>
</li>
<li>
<p>{@link org.jboss.logmanager.Level#WARN}</p>
</li>
<li>
<p>{@link org.jboss.logmanager.Level#INFO}</p>
</li>
<li>
<p>{@link org.jboss.logmanager.Level#DEBUG}</p>
</li>
<li>
<p>{@link org.jboss.logmanager.Level#TRACE}</p>
</li>
</ul>
</div>
<div class="paragraph">
<p>In addition, it also supports the standard JDK log levels.</p>
</div>
</div>
</div></div></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock"><a href="https://docs.jboss.org/jbossas/javadoc/7.1.2.Final/org/jboss/logmanager/Level.html">Level</a></p></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock"><code>INFO</code></p></td>
</tr>
<tr>
<th class="tableblock halign-left valign-top"><p class="tableblock"><a id="quarkus-log-logging-log-config_quarkus.log.console"></a><a href="#quarkus-log-logging-log-config_quarkus.log.console">Console logging</a></p></th>
<th class="tableblock halign-left valign-middle"><p class="tableblock">Type</p></th>
<th class="tableblock halign-left valign-middle"><p class="tableblock">Default</p></th>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a id="quarkus-log-logging-log-config_quarkus.log.console.enable"></a><code><a href="#quarkus-log-logging-log-config_quarkus.log.console.enable">quarkus.log.console.enable</a></code></p>
</div>
<div class="openblock description">
<div class="content">
<div class="paragraph">
<p>If console logging should be enabled</p>
</div>
</div>
</div></div></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock">boolean</p></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock"><code>true</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a id="quarkus-log-logging-log-config_quarkus.log.console.format"></a><code><a href="#quarkus-log-logging-log-config_quarkus.log.console.format">quarkus.log.console.format</a></code></p>
</div>
<div class="openblock description">
<div class="content">
<div class="paragraph">
<p>The log format. Note that this value will be ignored if an extension is present that takes control of console formatting (e.g. an XML or JSON-format extension).</p>
</div>
</div>
</div></div></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock"><code>%d{yyyy-MM-dd HH:mm:ss,SSS} %-5p [%c{3.}] (%t) %s%e%n</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a id="quarkus-log-logging-log-config_quarkus.log.console.level"></a><code><a href="#quarkus-log-logging-log-config_quarkus.log.console.level">quarkus.log.console.level</a></code></p>
</div>
<div class="openblock description">
<div class="content">
<div class="paragraph">
<p>The console log level.</p>
</div>
</div>
</div></div></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock"><a href="https://docs.jboss.org/jbossas/javadoc/7.1.2.Final/org/jboss/logmanager/Level.html">Level</a></p></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock"><code>ALL</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a id="quarkus-log-logging-log-config_quarkus.log.console.color"></a><code><a href="#quarkus-log-logging-log-config_quarkus.log.console.color">quarkus.log.console.color</a></code></p>
</div>
<div class="openblock description">
<div class="content">
<div class="paragraph">
<p>If the console logging should be in color. If undefined quarkus takes best guess based on operating system and environment. Note that this value will be ignored if an extension is present that takes control of console formatting (e.g. an XML or JSON-format extension).</p>
</div>
</div>
</div></div></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock">boolean</p></td>
<td class="tableblock halign-left valign-middle"></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a id="quarkus-log-logging-log-config_quarkus.log.console.darken"></a><code><a href="#quarkus-log-logging-log-config_quarkus.log.console.darken">quarkus.log.console.darken</a></code></p>
</div>
<div class="openblock description">
<div class="content">
<div class="paragraph">
<p>Specify how much the colors should be darkened. Note that this value will be ignored if an extension is present that takes control of console formatting (e.g. an XML or JSON-format extension).</p>
</div>
</div>
</div></div></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock">int</p></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock"><code>0</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a id="quarkus-log-logging-log-config_quarkus.log.console.async"></a><code><a href="#quarkus-log-logging-log-config_quarkus.log.console.async">quarkus.log.console.async</a></code></p>
</div>
<div class="openblock description">
<div class="content">
<div class="paragraph">
<p>Indicates whether to log asynchronously</p>
</div>
</div>
</div></div></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock">boolean</p></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock"><code>false</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a id="quarkus-log-logging-log-config_quarkus.log.console.async.queue-length"></a><code><a href="#quarkus-log-logging-log-config_quarkus.log.console.async.queue-length">quarkus.log.console.async.queue-length</a></code></p>
</div>
<div class="openblock description">
<div class="content">
<div class="paragraph">
<p>The queue length to use before flushing writing</p>
</div>
</div>
</div></div></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock">int</p></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock"><code>512</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a id="quarkus-log-logging-log-config_quarkus.log.console.async.overflow"></a><code><a href="#quarkus-log-logging-log-config_quarkus.log.console.async.overflow">quarkus.log.console.async.overflow</a></code></p>
</div>
<div class="openblock description">
<div class="content">
<div class="paragraph">
<p>Determine whether to block the publisher (rather than drop the message) when the queue is full</p>
</div>
</div>
</div></div></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock"><code>block</code>, <code>discard</code></p></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock"><code>block</code></p></td>
</tr>
<tr>
<th class="tableblock halign-left valign-top"><p class="tableblock"><a id="quarkus-log-logging-log-config_quarkus.log.file"></a><a href="#quarkus-log-logging-log-config_quarkus.log.file">File logging</a></p></th>
<th class="tableblock halign-left valign-middle"><p class="tableblock">Type</p></th>
<th class="tableblock halign-left valign-middle"><p class="tableblock">Default</p></th>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a id="quarkus-log-logging-log-config_quarkus.log.file.enable"></a><code><a href="#quarkus-log-logging-log-config_quarkus.log.file.enable">quarkus.log.file.enable</a></code></p>
</div>
<div class="openblock description">
<div class="content">
<div class="paragraph">
<p>If file logging should be enabled</p>
</div>
</div>
</div></div></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock">boolean</p></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock"><code>false</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a id="quarkus-log-logging-log-config_quarkus.log.file.format"></a><code><a href="#quarkus-log-logging-log-config_quarkus.log.file.format">quarkus.log.file.format</a></code></p>
</div>
<div class="openblock description">
<div class="content">
<div class="paragraph">
<p>The log format</p>
</div>
</div>
</div></div></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock"><code>%d{yyyy-MM-dd HH:mm:ss,SSS} %h %N[%i] %-5p [%c{3.}] (%t) %s%e%n</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a id="quarkus-log-logging-log-config_quarkus.log.file.level"></a><code><a href="#quarkus-log-logging-log-config_quarkus.log.file.level">quarkus.log.file.level</a></code></p>
</div>
<div class="openblock description">
<div class="content">
<div class="paragraph">
<p>The level of logs to be written into the file.</p>
</div>
</div>
</div></div></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock"><a href="https://docs.jboss.org/jbossas/javadoc/7.1.2.Final/org/jboss/logmanager/Level.html">Level</a></p></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock"><code>ALL</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a id="quarkus-log-logging-log-config_quarkus.log.file.path"></a><code><a href="#quarkus-log-logging-log-config_quarkus.log.file.path">quarkus.log.file.path</a></code></p>
</div>
<div class="openblock description">
<div class="content">
<div class="paragraph">
<p>The name of the file in which logs will be written.</p>
</div>
</div>
</div></div></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock"><a href="https://docs.oracle.com/javase/8/docs/api/java/io/File.html">File</a></p></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock"><code>quarkus.log</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a id="quarkus-log-logging-log-config_quarkus.log.file.async"></a><code><a href="#quarkus-log-logging-log-config_quarkus.log.file.async">quarkus.log.file.async</a></code></p>
</div>
<div class="openblock description">
<div class="content">
<div class="paragraph">
<p>Indicates whether to log asynchronously</p>
</div>
</div>
</div></div></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock">boolean</p></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock"><code>false</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a id="quarkus-log-logging-log-config_quarkus.log.file.async.queue-length"></a><code><a href="#quarkus-log-logging-log-config_quarkus.log.file.async.queue-length">quarkus.log.file.async.queue-length</a></code></p>
</div>
<div class="openblock description">
<div class="content">
<div class="paragraph">
<p>The queue length to use before flushing writing</p>
</div>
</div>
</div></div></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock">int</p></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock"><code>512</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a id="quarkus-log-logging-log-config_quarkus.log.file.async.overflow"></a><code><a href="#quarkus-log-logging-log-config_quarkus.log.file.async.overflow">quarkus.log.file.async.overflow</a></code></p>
</div>
<div class="openblock description">
<div class="content">
<div class="paragraph">
<p>Determine whether to block the publisher (rather than drop the message) when the queue is full</p>
</div>
</div>
</div></div></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock"><code>block</code>, <code>discard</code></p></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock"><code>block</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a id="quarkus-log-logging-log-config_quarkus.log.file.rotation.max-file-size"></a><code><a href="#quarkus-log-logging-log-config_quarkus.log.file.rotation.max-file-size">quarkus.log.file.rotation.max-file-size</a></code></p>
</div>
<div class="openblock description">
<div class="content">
<div class="paragraph">
<p>The maximum file size of the log file after which a rotation is executed.</p>
</div>
</div>
</div></div></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock">MemorySize  <a href="#memory-size-note-anchor" title="More information about the MemorySize format"><span class="icon"><i class="fa fa-question-circle"></i></span></a></p></td>
<td class="tableblock halign-left valign-middle"></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a id="quarkus-log-logging-log-config_quarkus.log.file.rotation.max-backup-index"></a><code><a href="#quarkus-log-logging-log-config_quarkus.log.file.rotation.max-backup-index">quarkus.log.file.rotation.max-backup-index</a></code></p>
</div>
<div class="openblock description">
<div class="content">
<div class="paragraph">
<p>The maximum number of backups to keep.</p>
</div>
</div>
</div></div></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock">int</p></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock"><code>1</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a id="quarkus-log-logging-log-config_quarkus.log.file.rotation.file-suffix"></a><code><a href="#quarkus-log-logging-log-config_quarkus.log.file.rotation.file-suffix">quarkus.log.file.rotation.file-suffix</a></code></p>
</div>
<div class="openblock description">
<div class="content">
<div class="paragraph">
<p>File handler rotation file suffix. Example fileSuffix: .yyyy-MM-dd</p>
</div>
</div>
</div></div></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-middle"></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a id="quarkus-log-logging-log-config_quarkus.log.file.rotation.rotate-on-boot"></a><code><a href="#quarkus-log-logging-log-config_quarkus.log.file.rotation.rotate-on-boot">quarkus.log.file.rotation.rotate-on-boot</a></code></p>
</div>
<div class="openblock description">
<div class="content">
<div class="paragraph">
<p>Indicates whether to rotate log files on server initialization.
 You need to either set a <code>max-file-size</code> or configure a <code>file-suffix</code> for it to work.</p>
</div>
</div>
</div></div></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock">boolean</p></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock"><code>true</code></p></td>
</tr>
<tr>
<th class="tableblock halign-left valign-top"><p class="tableblock"><a id="quarkus-log-logging-log-config_quarkus.log.syslog"></a><a href="#quarkus-log-logging-log-config_quarkus.log.syslog">Syslog logging</a></p></th>
<th class="tableblock halign-left valign-middle"><p class="tableblock">Type</p></th>
<th class="tableblock halign-left valign-middle"><p class="tableblock">Default</p></th>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a id="quarkus-log-logging-log-config_quarkus.log.syslog.enable"></a><code><a href="#quarkus-log-logging-log-config_quarkus.log.syslog.enable">quarkus.log.syslog.enable</a></code></p>
</div>
<div class="openblock description">
<div class="content">
<div class="paragraph">
<p>If syslog logging should be enabled</p>
</div>
</div>
</div></div></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock">boolean</p></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock"><code>false</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a id="quarkus-log-logging-log-config_quarkus.log.syslog.endpoint"></a><code><a href="#quarkus-log-logging-log-config_quarkus.log.syslog.endpoint">quarkus.log.syslog.endpoint</a></code></p>
</div>
<div class="openblock description">
<div class="content">
<div class="paragraph">
<p>The IP address and port of the syslog server</p>
</div>
</div>
</div></div></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock">host:port</p></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock"><code>localhost:514</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a id="quarkus-log-logging-log-config_quarkus.log.syslog.app-name"></a><code><a href="#quarkus-log-logging-log-config_quarkus.log.syslog.app-name">quarkus.log.syslog.app-name</a></code></p>
</div>
<div class="openblock description">
<div class="content">
<div class="paragraph">
<p>The app name used when formatting the message in RFC5424 format</p>
</div>
</div>
</div></div></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-middle"></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a id="quarkus-log-logging-log-config_quarkus.log.syslog.hostname"></a><code><a href="#quarkus-log-logging-log-config_quarkus.log.syslog.hostname">quarkus.log.syslog.hostname</a></code></p>
</div>
<div class="openblock description">
<div class="content">
<div class="paragraph">
<p>The name of the host the messages are being sent from</p>
</div>
</div>
</div></div></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-middle"></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a id="quarkus-log-logging-log-config_quarkus.log.syslog.facility"></a><code><a href="#quarkus-log-logging-log-config_quarkus.log.syslog.facility">quarkus.log.syslog.facility</a></code></p>
</div>
<div class="openblock description">
<div class="content">
<div class="paragraph">
<p>Sets the facility used when calculating the priority of the message as defined by RFC-5424 and RFC-3164</p>
</div>
</div>
</div></div></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock"><code>kernel</code>, <code>user-level</code>, <code>mail-system</code>, <code>system-daemons</code>, <code>security</code>, <code>syslogd</code>, <code>line-printer</code>, <code>network-news</code>, <code>uucp</code>, <code>clock-daemon</code>, <code>security2</code>, <code>ftp-daemon</code>, <code>ntp</code>, <code>log-audit</code>, <code>log-alert</code>, <code>clock-daemon2</code>, <code>local-use-0</code>, <code>local-use-1</code>, <code>local-use-2</code>, <code>local-use-3</code>, <code>local-use-4</code>, <code>local-use-5</code>, <code>local-use-6</code>, <code>local-use-7</code></p></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock"><code>user-level</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a id="quarkus-log-logging-log-config_quarkus.log.syslog.syslog-type"></a><code><a href="#quarkus-log-logging-log-config_quarkus.log.syslog.syslog-type">quarkus.log.syslog.syslog-type</a></code></p>
</div>
<div class="openblock description">
<div class="content">
<div class="paragraph">
<p>Set the <code>SyslogType syslog type</code> this handler should use to format the message sent</p>
</div>
</div>
</div></div></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock"><code>rfc5424</code>, <code>rfc3164</code></p></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock"><code>rfc5424</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a id="quarkus-log-logging-log-config_quarkus.log.syslog.protocol"></a><code><a href="#quarkus-log-logging-log-config_quarkus.log.syslog.protocol">quarkus.log.syslog.protocol</a></code></p>
</div>
<div class="openblock description">
<div class="content">
<div class="paragraph">
<p>Sets the protocol used to connect to the syslog server</p>
</div>
</div>
</div></div></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock"><code>tcp</code>, <code>udp</code>, <code>ssl-tcp</code></p></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock"><code>tcp</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a id="quarkus-log-logging-log-config_quarkus.log.syslog.use-counting-framing"></a><code><a href="#quarkus-log-logging-log-config_quarkus.log.syslog.use-counting-framing">quarkus.log.syslog.use-counting-framing</a></code></p>
</div>
<div class="openblock description">
<div class="content">
<div class="paragraph">
<p>Set to <code>true</code> if the message being sent should be prefixed with the size of the message</p>
</div>
</div>
</div></div></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock">boolean</p></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock"><code>false</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a id="quarkus-log-logging-log-config_quarkus.log.syslog.truncate"></a><code><a href="#quarkus-log-logging-log-config_quarkus.log.syslog.truncate">quarkus.log.syslog.truncate</a></code></p>
</div>
<div class="openblock description">
<div class="content">
<div class="paragraph">
<p>Set to <code>true</code> if the message should be truncated</p>
</div>
</div>
</div></div></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock">boolean</p></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock"><code>true</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a id="quarkus-log-logging-log-config_quarkus.log.syslog.block-on-reconnect"></a><code><a href="#quarkus-log-logging-log-config_quarkus.log.syslog.block-on-reconnect">quarkus.log.syslog.block-on-reconnect</a></code></p>
</div>
<div class="openblock description">
<div class="content">
<div class="paragraph">
<p>Enables or disables blocking when attempting to reconnect a <code>org.jboss.logmanager.handlers.SyslogHandler.Protocol#TCP
TCP</code> or <code>org.jboss.logmanager.handlers.SyslogHandler.Protocol#SSL_TCP SSL TCP</code> protocol</p>
</div>
</div>
</div></div></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock">boolean</p></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock"><code>false</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a id="quarkus-log-logging-log-config_quarkus.log.syslog.format"></a><code><a href="#quarkus-log-logging-log-config_quarkus.log.syslog.format">quarkus.log.syslog.format</a></code></p>
</div>
<div class="openblock description">
<div class="content">
<div class="paragraph">
<p>The log message format</p>
</div>
</div>
</div></div></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock"><code>%d{yyyy-MM-dd HH:mm:ss,SSS} %-5p [%c{3.}] (%t) %s%e%n</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a id="quarkus-log-logging-log-config_quarkus.log.syslog.level"></a><code><a href="#quarkus-log-logging-log-config_quarkus.log.syslog.level">quarkus.log.syslog.level</a></code></p>
</div>
<div class="openblock description">
<div class="content">
<div class="paragraph">
<p>The log level specifying, which message levels will be logged by syslog logger</p>
</div>
</div>
</div></div></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock"><a href="https://docs.jboss.org/jbossas/javadoc/7.1.2.Final/org/jboss/logmanager/Level.html">Level</a></p></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock"><code>ALL</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a id="quarkus-log-logging-log-config_quarkus.log.syslog.async"></a><code><a href="#quarkus-log-logging-log-config_quarkus.log.syslog.async">quarkus.log.syslog.async</a></code></p>
</div>
<div class="openblock description">
<div class="content">
<div class="paragraph">
<p>Indicates whether to log asynchronously</p>
</div>
</div>
</div></div></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock">boolean</p></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock"><code>false</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a id="quarkus-log-logging-log-config_quarkus.log.syslog.async.queue-length"></a><code><a href="#quarkus-log-logging-log-config_quarkus.log.syslog.async.queue-length">quarkus.log.syslog.async.queue-length</a></code></p>
</div>
<div class="openblock description">
<div class="content">
<div class="paragraph">
<p>The queue length to use before flushing writing</p>
</div>
</div>
</div></div></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock">int</p></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock"><code>512</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a id="quarkus-log-logging-log-config_quarkus.log.syslog.async.overflow"></a><code><a href="#quarkus-log-logging-log-config_quarkus.log.syslog.async.overflow">quarkus.log.syslog.async.overflow</a></code></p>
</div>
<div class="openblock description">
<div class="content">
<div class="paragraph">
<p>Determine whether to block the publisher (rather than drop the message) when the queue is full</p>
</div>
</div>
</div></div></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock"><code>block</code>, <code>discard</code></p></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock"><code>block</code></p></td>
</tr>
<tr>
<th class="tableblock halign-left valign-top"><p class="tableblock"><a id="quarkus-log-logging-log-config_quarkus.log.categories"></a><a href="#quarkus-log-logging-log-config_quarkus.log.categories">Logging categories</a></p></th>
<th class="tableblock halign-left valign-middle"><p class="tableblock">Type</p></th>
<th class="tableblock halign-left valign-middle"><p class="tableblock">Default</p></th>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a id="quarkus-log-logging-log-config_quarkus.log.category.-categories-.level"></a><code><a href="#quarkus-log-logging-log-config_quarkus.log.category.-categories-.level">quarkus.log.category."categories".level</a></code></p>
</div>
<div class="openblock description">
<div class="content">
<div class="paragraph">
<p>The log level level for this category</p>
</div>
</div>
</div></div></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock">InheritableLevel</p></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock"><code>inherit</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a id="quarkus-log-logging-log-config_quarkus.log.category.-categories-.handlers"></a><code><a href="#quarkus-log-logging-log-config_quarkus.log.category.-categories-.handlers">quarkus.log.category."categories".handlers</a></code></p>
</div>
<div class="openblock description">
<div class="content">
<div class="paragraph">
<p>The names of the handlers to link to this category.</p>
</div>
</div>
</div></div></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock">list of string</p></td>
<td class="tableblock halign-left valign-middle"></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a id="quarkus-log-logging-log-config_quarkus.log.category.-categories-.use-parent-handlers"></a><code><a href="#quarkus-log-logging-log-config_quarkus.log.category.-categories-.use-parent-handlers">quarkus.log.category."categories".use-parent-handlers</a></code></p>
</div>
<div class="openblock description">
<div class="content">
<div class="paragraph">
<p>Specify whether or not this logger should send its output to its parent Logger</p>
</div>
</div>
</div></div></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock">boolean</p></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock"><code>true</code></p></td>
</tr>
<tr>
<th class="tableblock halign-left valign-top"><p class="tableblock"><a id="quarkus-log-logging-log-config_quarkus.log.console-handlers"></a><a href="#quarkus-log-logging-log-config_quarkus.log.console-handlers">Console handlers</a></p></th>
<th class="tableblock halign-left valign-middle"><p class="tableblock">Type</p></th>
<th class="tableblock halign-left valign-middle"><p class="tableblock">Default</p></th>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a id="quarkus-log-logging-log-config_quarkus.log.handler.console.-console-handlers-.enable"></a><code><a href="#quarkus-log-logging-log-config_quarkus.log.handler.console.-console-handlers-.enable">quarkus.log.handler.console."console-handlers".enable</a></code></p>
</div>
<div class="openblock description">
<div class="content">
<div class="paragraph">
<p>If console logging should be enabled</p>
</div>
</div>
</div></div></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock">boolean</p></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock"><code>true</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a id="quarkus-log-logging-log-config_quarkus.log.handler.console.-console-handlers-.format"></a><code><a href="#quarkus-log-logging-log-config_quarkus.log.handler.console.-console-handlers-.format">quarkus.log.handler.console."console-handlers".format</a></code></p>
</div>
<div class="openblock description">
<div class="content">
<div class="paragraph">
<p>The log format. Note that this value will be ignored if an extension is present that takes control of console formatting (e.g. an XML or JSON-format extension).</p>
</div>
</div>
</div></div></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock"><code>%d{yyyy-MM-dd HH:mm:ss,SSS} %-5p [%c{3.}] (%t) %s%e%n</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a id="quarkus-log-logging-log-config_quarkus.log.handler.console.-console-handlers-.level"></a><code><a href="#quarkus-log-logging-log-config_quarkus.log.handler.console.-console-handlers-.level">quarkus.log.handler.console."console-handlers".level</a></code></p>
</div>
<div class="openblock description">
<div class="content">
<div class="paragraph">
<p>The console log level.</p>
</div>
</div>
</div></div></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock"><a href="https://docs.jboss.org/jbossas/javadoc/7.1.2.Final/org/jboss/logmanager/Level.html">Level</a></p></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock"><code>ALL</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a id="quarkus-log-logging-log-config_quarkus.log.handler.console.-console-handlers-.color"></a><code><a href="#quarkus-log-logging-log-config_quarkus.log.handler.console.-console-handlers-.color">quarkus.log.handler.console."console-handlers".color</a></code></p>
</div>
<div class="openblock description">
<div class="content">
<div class="paragraph">
<p>If the console logging should be in color. If undefined quarkus takes best guess based on operating system and environment. Note that this value will be ignored if an extension is present that takes control of console formatting (e.g. an XML or JSON-format extension).</p>
</div>
</div>
</div></div></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock">boolean</p></td>
<td class="tableblock halign-left valign-middle"></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a id="quarkus-log-logging-log-config_quarkus.log.handler.console.-console-handlers-.darken"></a><code><a href="#quarkus-log-logging-log-config_quarkus.log.handler.console.-console-handlers-.darken">quarkus.log.handler.console."console-handlers".darken</a></code></p>
</div>
<div class="openblock description">
<div class="content">
<div class="paragraph">
<p>Specify how much the colors should be darkened. Note that this value will be ignored if an extension is present that takes control of console formatting (e.g. an XML or JSON-format extension).</p>
</div>
</div>
</div></div></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock">int</p></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock"><code>0</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a id="quarkus-log-logging-log-config_quarkus.log.handler.console.-console-handlers-.async"></a><code><a href="#quarkus-log-logging-log-config_quarkus.log.handler.console.-console-handlers-.async">quarkus.log.handler.console."console-handlers".async</a></code></p>
</div>
<div class="openblock description">
<div class="content">
<div class="paragraph">
<p>Indicates whether to log asynchronously</p>
</div>
</div>
</div></div></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock">boolean</p></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock"><code>false</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a id="quarkus-log-logging-log-config_quarkus.log.handler.console.-console-handlers-.async.queue-length"></a><code><a href="#quarkus-log-logging-log-config_quarkus.log.handler.console.-console-handlers-.async.queue-length">quarkus.log.handler.console."console-handlers".async.queue-length</a></code></p>
</div>
<div class="openblock description">
<div class="content">
<div class="paragraph">
<p>The queue length to use before flushing writing</p>
</div>
</div>
</div></div></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock">int</p></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock"><code>512</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a id="quarkus-log-logging-log-config_quarkus.log.handler.console.-console-handlers-.async.overflow"></a><code><a href="#quarkus-log-logging-log-config_quarkus.log.handler.console.-console-handlers-.async.overflow">quarkus.log.handler.console."console-handlers".async.overflow</a></code></p>
</div>
<div class="openblock description">
<div class="content">
<div class="paragraph">
<p>Determine whether to block the publisher (rather than drop the message) when the queue is full</p>
</div>
</div>
</div></div></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock"><code>block</code>, <code>discard</code></p></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock"><code>block</code></p></td>
</tr>
<tr>
<th class="tableblock halign-left valign-top"><p class="tableblock"><a id="quarkus-log-logging-log-config_quarkus.log.file-handlers"></a><a href="#quarkus-log-logging-log-config_quarkus.log.file-handlers">File handlers</a></p></th>
<th class="tableblock halign-left valign-middle"><p class="tableblock">Type</p></th>
<th class="tableblock halign-left valign-middle"><p class="tableblock">Default</p></th>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a id="quarkus-log-logging-log-config_quarkus.log.handler.file.-file-handlers-.enable"></a><code><a href="#quarkus-log-logging-log-config_quarkus.log.handler.file.-file-handlers-.enable">quarkus.log.handler.file."file-handlers".enable</a></code></p>
</div>
<div class="openblock description">
<div class="content">
<div class="paragraph">
<p>If file logging should be enabled</p>
</div>
</div>
</div></div></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock">boolean</p></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock"><code>false</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a id="quarkus-log-logging-log-config_quarkus.log.handler.file.-file-handlers-.format"></a><code><a href="#quarkus-log-logging-log-config_quarkus.log.handler.file.-file-handlers-.format">quarkus.log.handler.file."file-handlers".format</a></code></p>
</div>
<div class="openblock description">
<div class="content">
<div class="paragraph">
<p>The log format</p>
</div>
</div>
</div></div></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock"><code>%d{yyyy-MM-dd HH:mm:ss,SSS} %h %N[%i] %-5p [%c{3.}] (%t) %s%e%n</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a id="quarkus-log-logging-log-config_quarkus.log.handler.file.-file-handlers-.level"></a><code><a href="#quarkus-log-logging-log-config_quarkus.log.handler.file.-file-handlers-.level">quarkus.log.handler.file."file-handlers".level</a></code></p>
</div>
<div class="openblock description">
<div class="content">
<div class="paragraph">
<p>The level of logs to be written into the file.</p>
</div>
</div>
</div></div></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock"><a href="https://docs.jboss.org/jbossas/javadoc/7.1.2.Final/org/jboss/logmanager/Level.html">Level</a></p></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock"><code>ALL</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a id="quarkus-log-logging-log-config_quarkus.log.handler.file.-file-handlers-.path"></a><code><a href="#quarkus-log-logging-log-config_quarkus.log.handler.file.-file-handlers-.path">quarkus.log.handler.file."file-handlers".path</a></code></p>
</div>
<div class="openblock description">
<div class="content">
<div class="paragraph">
<p>The name of the file in which logs will be written.</p>
</div>
</div>
</div></div></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock"><a href="https://docs.oracle.com/javase/8/docs/api/java/io/File.html">File</a></p></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock"><code>quarkus.log</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a id="quarkus-log-logging-log-config_quarkus.log.handler.file.-file-handlers-.async"></a><code><a href="#quarkus-log-logging-log-config_quarkus.log.handler.file.-file-handlers-.async">quarkus.log.handler.file."file-handlers".async</a></code></p>
</div>
<div class="openblock description">
<div class="content">
<div class="paragraph">
<p>Indicates whether to log asynchronously</p>
</div>
</div>
</div></div></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock">boolean</p></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock"><code>false</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a id="quarkus-log-logging-log-config_quarkus.log.handler.file.-file-handlers-.async.queue-length"></a><code><a href="#quarkus-log-logging-log-config_quarkus.log.handler.file.-file-handlers-.async.queue-length">quarkus.log.handler.file."file-handlers".async.queue-length</a></code></p>
</div>
<div class="openblock description">
<div class="content">
<div class="paragraph">
<p>The queue length to use before flushing writing</p>
</div>
</div>
</div></div></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock">int</p></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock"><code>512</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a id="quarkus-log-logging-log-config_quarkus.log.handler.file.-file-handlers-.async.overflow"></a><code><a href="#quarkus-log-logging-log-config_quarkus.log.handler.file.-file-handlers-.async.overflow">quarkus.log.handler.file."file-handlers".async.overflow</a></code></p>
</div>
<div class="openblock description">
<div class="content">
<div class="paragraph">
<p>Determine whether to block the publisher (rather than drop the message) when the queue is full</p>
</div>
</div>
</div></div></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock"><code>block</code>, <code>discard</code></p></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock"><code>block</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a id="quarkus-log-logging-log-config_quarkus.log.handler.file.-file-handlers-.rotation.max-file-size"></a><code><a href="#quarkus-log-logging-log-config_quarkus.log.handler.file.-file-handlers-.rotation.max-file-size">quarkus.log.handler.file."file-handlers".rotation.max-file-size</a></code></p>
</div>
<div class="openblock description">
<div class="content">
<div class="paragraph">
<p>The maximum file size of the log file after which a rotation is executed.</p>
</div>
</div>
</div></div></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock">MemorySize  <a href="#memory-size-note-anchor" title="More information about the MemorySize format"><span class="icon"><i class="fa fa-question-circle"></i></span></a></p></td>
<td class="tableblock halign-left valign-middle"></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a id="quarkus-log-logging-log-config_quarkus.log.handler.file.-file-handlers-.rotation.max-backup-index"></a><code><a href="#quarkus-log-logging-log-config_quarkus.log.handler.file.-file-handlers-.rotation.max-backup-index">quarkus.log.handler.file."file-handlers".rotation.max-backup-index</a></code></p>
</div>
<div class="openblock description">
<div class="content">
<div class="paragraph">
<p>The maximum number of backups to keep.</p>
</div>
</div>
</div></div></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock">int</p></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock"><code>1</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a id="quarkus-log-logging-log-config_quarkus.log.handler.file.-file-handlers-.rotation.file-suffix"></a><code><a href="#quarkus-log-logging-log-config_quarkus.log.handler.file.-file-handlers-.rotation.file-suffix">quarkus.log.handler.file."file-handlers".rotation.file-suffix</a></code></p>
</div>
<div class="openblock description">
<div class="content">
<div class="paragraph">
<p>File handler rotation file suffix. Example fileSuffix: .yyyy-MM-dd</p>
</div>
</div>
</div></div></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-middle"></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a id="quarkus-log-logging-log-config_quarkus.log.handler.file.-file-handlers-.rotation.rotate-on-boot"></a><code><a href="#quarkus-log-logging-log-config_quarkus.log.handler.file.-file-handlers-.rotation.rotate-on-boot">quarkus.log.handler.file."file-handlers".rotation.rotate-on-boot</a></code></p>
</div>
<div class="openblock description">
<div class="content">
<div class="paragraph">
<p>Indicates whether to rotate log files on server initialization.
 You need to either set a <code>max-file-size</code> or configure a <code>file-suffix</code> for it to work.</p>
</div>
</div>
</div></div></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock">boolean</p></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock"><code>true</code></p></td>
</tr>
<tr>
<th class="tableblock halign-left valign-top"><p class="tableblock"><a id="quarkus-log-logging-log-config_quarkus.log.syslog-handlers"></a><a href="#quarkus-log-logging-log-config_quarkus.log.syslog-handlers">Syslog handlers</a></p></th>
<th class="tableblock halign-left valign-middle"><p class="tableblock">Type</p></th>
<th class="tableblock halign-left valign-middle"><p class="tableblock">Default</p></th>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a id="quarkus-log-logging-log-config_quarkus.log.handler.syslog.-syslog-handlers-.enable"></a><code><a href="#quarkus-log-logging-log-config_quarkus.log.handler.syslog.-syslog-handlers-.enable">quarkus.log.handler.syslog."syslog-handlers".enable</a></code></p>
</div>
<div class="openblock description">
<div class="content">
<div class="paragraph">
<p>If syslog logging should be enabled</p>
</div>
</div>
</div></div></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock">boolean</p></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock"><code>false</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a id="quarkus-log-logging-log-config_quarkus.log.handler.syslog.-syslog-handlers-.endpoint"></a><code><a href="#quarkus-log-logging-log-config_quarkus.log.handler.syslog.-syslog-handlers-.endpoint">quarkus.log.handler.syslog."syslog-handlers".endpoint</a></code></p>
</div>
<div class="openblock description">
<div class="content">
<div class="paragraph">
<p>The IP address and port of the syslog server</p>
</div>
</div>
</div></div></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock">host:port</p></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock"><code>localhost:514</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a id="quarkus-log-logging-log-config_quarkus.log.handler.syslog.-syslog-handlers-.app-name"></a><code><a href="#quarkus-log-logging-log-config_quarkus.log.handler.syslog.-syslog-handlers-.app-name">quarkus.log.handler.syslog."syslog-handlers".app-name</a></code></p>
</div>
<div class="openblock description">
<div class="content">
<div class="paragraph">
<p>The app name used when formatting the message in RFC5424 format</p>
</div>
</div>
</div></div></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-middle"></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a id="quarkus-log-logging-log-config_quarkus.log.handler.syslog.-syslog-handlers-.hostname"></a><code><a href="#quarkus-log-logging-log-config_quarkus.log.handler.syslog.-syslog-handlers-.hostname">quarkus.log.handler.syslog."syslog-handlers".hostname</a></code></p>
</div>
<div class="openblock description">
<div class="content">
<div class="paragraph">
<p>The name of the host the messages are being sent from</p>
</div>
</div>
</div></div></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-middle"></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a id="quarkus-log-logging-log-config_quarkus.log.handler.syslog.-syslog-handlers-.facility"></a><code><a href="#quarkus-log-logging-log-config_quarkus.log.handler.syslog.-syslog-handlers-.facility">quarkus.log.handler.syslog."syslog-handlers".facility</a></code></p>
</div>
<div class="openblock description">
<div class="content">
<div class="paragraph">
<p>Sets the facility used when calculating the priority of the message as defined by RFC-5424 and RFC-3164</p>
</div>
</div>
</div></div></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock"><code>kernel</code>, <code>user-level</code>, <code>mail-system</code>, <code>system-daemons</code>, <code>security</code>, <code>syslogd</code>, <code>line-printer</code>, <code>network-news</code>, <code>uucp</code>, <code>clock-daemon</code>, <code>security2</code>, <code>ftp-daemon</code>, <code>ntp</code>, <code>log-audit</code>, <code>log-alert</code>, <code>clock-daemon2</code>, <code>local-use-0</code>, <code>local-use-1</code>, <code>local-use-2</code>, <code>local-use-3</code>, <code>local-use-4</code>, <code>local-use-5</code>, <code>local-use-6</code>, <code>local-use-7</code></p></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock"><code>user-level</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a id="quarkus-log-logging-log-config_quarkus.log.handler.syslog.-syslog-handlers-.syslog-type"></a><code><a href="#quarkus-log-logging-log-config_quarkus.log.handler.syslog.-syslog-handlers-.syslog-type">quarkus.log.handler.syslog."syslog-handlers".syslog-type</a></code></p>
</div>
<div class="openblock description">
<div class="content">
<div class="paragraph">
<p>Set the <code>SyslogType syslog type</code> this handler should use to format the message sent</p>
</div>
</div>
</div></div></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock"><code>rfc5424</code>, <code>rfc3164</code></p></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock"><code>rfc5424</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a id="quarkus-log-logging-log-config_quarkus.log.handler.syslog.-syslog-handlers-.protocol"></a><code><a href="#quarkus-log-logging-log-config_quarkus.log.handler.syslog.-syslog-handlers-.protocol">quarkus.log.handler.syslog."syslog-handlers".protocol</a></code></p>
</div>
<div class="openblock description">
<div class="content">
<div class="paragraph">
<p>Sets the protocol used to connect to the syslog server</p>
</div>
</div>
</div></div></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock"><code>tcp</code>, <code>udp</code>, <code>ssl-tcp</code></p></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock"><code>tcp</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a id="quarkus-log-logging-log-config_quarkus.log.handler.syslog.-syslog-handlers-.use-counting-framing"></a><code><a href="#quarkus-log-logging-log-config_quarkus.log.handler.syslog.-syslog-handlers-.use-counting-framing">quarkus.log.handler.syslog."syslog-handlers".use-counting-framing</a></code></p>
</div>
<div class="openblock description">
<div class="content">
<div class="paragraph">
<p>Set to <code>true</code> if the message being sent should be prefixed with the size of the message</p>
</div>
</div>
</div></div></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock">boolean</p></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock"><code>false</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a id="quarkus-log-logging-log-config_quarkus.log.handler.syslog.-syslog-handlers-.truncate"></a><code><a href="#quarkus-log-logging-log-config_quarkus.log.handler.syslog.-syslog-handlers-.truncate">quarkus.log.handler.syslog."syslog-handlers".truncate</a></code></p>
</div>
<div class="openblock description">
<div class="content">
<div class="paragraph">
<p>Set to <code>true</code> if the message should be truncated</p>
</div>
</div>
</div></div></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock">boolean</p></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock"><code>true</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a id="quarkus-log-logging-log-config_quarkus.log.handler.syslog.-syslog-handlers-.block-on-reconnect"></a><code><a href="#quarkus-log-logging-log-config_quarkus.log.handler.syslog.-syslog-handlers-.block-on-reconnect">quarkus.log.handler.syslog."syslog-handlers".block-on-reconnect</a></code></p>
</div>
<div class="openblock description">
<div class="content">
<div class="paragraph">
<p>Enables or disables blocking when attempting to reconnect a <code>org.jboss.logmanager.handlers.SyslogHandler.Protocol#TCP
TCP</code> or <code>org.jboss.logmanager.handlers.SyslogHandler.Protocol#SSL_TCP SSL TCP</code> protocol</p>
</div>
</div>
</div></div></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock">boolean</p></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock"><code>false</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a id="quarkus-log-logging-log-config_quarkus.log.handler.syslog.-syslog-handlers-.format"></a><code><a href="#quarkus-log-logging-log-config_quarkus.log.handler.syslog.-syslog-handlers-.format">quarkus.log.handler.syslog."syslog-handlers".format</a></code></p>
</div>
<div class="openblock description">
<div class="content">
<div class="paragraph">
<p>The log message format</p>
</div>
</div>
</div></div></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock"><code>%d{yyyy-MM-dd HH:mm:ss,SSS} %-5p [%c{3.}] (%t) %s%e%n</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a id="quarkus-log-logging-log-config_quarkus.log.handler.syslog.-syslog-handlers-.level"></a><code><a href="#quarkus-log-logging-log-config_quarkus.log.handler.syslog.-syslog-handlers-.level">quarkus.log.handler.syslog."syslog-handlers".level</a></code></p>
</div>
<div class="openblock description">
<div class="content">
<div class="paragraph">
<p>The log level specifying, which message levels will be logged by syslog logger</p>
</div>
</div>
</div></div></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock"><a href="https://docs.jboss.org/jbossas/javadoc/7.1.2.Final/org/jboss/logmanager/Level.html">Level</a></p></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock"><code>ALL</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a id="quarkus-log-logging-log-config_quarkus.log.handler.syslog.-syslog-handlers-.async"></a><code><a href="#quarkus-log-logging-log-config_quarkus.log.handler.syslog.-syslog-handlers-.async">quarkus.log.handler.syslog."syslog-handlers".async</a></code></p>
</div>
<div class="openblock description">
<div class="content">
<div class="paragraph">
<p>Indicates whether to log asynchronously</p>
</div>
</div>
</div></div></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock">boolean</p></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock"><code>false</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a id="quarkus-log-logging-log-config_quarkus.log.handler.syslog.-syslog-handlers-.async.queue-length"></a><code><a href="#quarkus-log-logging-log-config_quarkus.log.handler.syslog.-syslog-handlers-.async.queue-length">quarkus.log.handler.syslog."syslog-handlers".async.queue-length</a></code></p>
</div>
<div class="openblock description">
<div class="content">
<div class="paragraph">
<p>The queue length to use before flushing writing</p>
</div>
</div>
</div></div></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock">int</p></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock"><code>512</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a id="quarkus-log-logging-log-config_quarkus.log.handler.syslog.-syslog-handlers-.async.overflow"></a><code><a href="#quarkus-log-logging-log-config_quarkus.log.handler.syslog.-syslog-handlers-.async.overflow">quarkus.log.handler.syslog."syslog-handlers".async.overflow</a></code></p>
</div>
<div class="openblock description">
<div class="content">
<div class="paragraph">
<p>Determine whether to block the publisher (rather than drop the message) when the queue is full</p>
</div>
</div>
</div></div></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock"><code>block</code>, <code>discard</code></p></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock"><code>block</code></p></td>
</tr>
<tr>
<th class="tableblock halign-left valign-top"><p class="tableblock"><a id="quarkus-log-logging-log-config_quarkus.log.filters"></a><a href="#quarkus-log-logging-log-config_quarkus.log.filters">Log cleanup filters - internal use</a></p></th>
<th class="tableblock halign-left valign-middle"><p class="tableblock">Type</p></th>
<th class="tableblock halign-left valign-middle"><p class="tableblock">Default</p></th>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a id="quarkus-log-logging-log-config_quarkus.log.filter.-filters-.if-starts-with"></a><code><a href="#quarkus-log-logging-log-config_quarkus.log.filter.-filters-.if-starts-with">quarkus.log.filter."filters".if-starts-with</a></code></p>
</div>
<div class="openblock description">
<div class="content">
<div class="paragraph">
<p>The message starts to match</p>
</div>
</div>
</div></div></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock">list of string</p></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock"><code>inherit</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a id="quarkus-log-logging-log-config_quarkus.log.filter.-filters-.target-level"></a><code><a href="#quarkus-log-logging-log-config_quarkus.log.filter.-filters-.target-level">quarkus.log.filter."filters".target-level</a></code></p>
</div>
<div class="openblock description">
<div class="content">
<div class="paragraph">
<p>The new log level for the filtered message, defaults to DEBUG</p>
</div>
</div>
</div></div></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock"><a href="https://docs.jboss.org/jbossas/javadoc/7.1.2.Final/org/jboss/logmanager/Level.html">Level</a></p></td>
<td class="tableblock halign-left valign-middle"><p class="tableblock"><code>DEBUG</code></p></td>
</tr>
</tbody>
</table>
<div id="memory-size-note-anchor" class="admonitionblock note">
<table>
<tr>
<td class="icon">
<i class="fa icon-note" title="Note"></i>
</td>
<td class="content">
<div class="title">About the MemorySize format</div>
<div class="paragraph">
<p>A size configuration option recognises string in this format (shown as a regular expression): <code>[0-9]+[KkMmGgTtPpEeZzYy]?</code>.
If no suffix is given, assume bytes.</p>
</div>
</td>
</tr>
</table>
</div>
</div>
</div>
<div id="footnotes">
<hr>
<div class="footnote" id="_footnotedef_1">
<a href="#_footnoteref_1">1</a>. Some extensions may define customized default log levels for certain categories, in order to reduce log noise by default.  Setting the log level in configuration will override any extension-defined log levels.
</div>
<div class="footnote" id="_footnotedef_2">
<a href="#_footnoteref_2">2</a>. By default the configured category gets the same handlers attached as the one on the root logger.
</div>
<div class="footnote" id="_footnotedef_3">
<a href="#_footnoteref_3">3</a>. Format sequences which examine caller information may affect performance
</div>
</div>
    </div>
  </div>
</div>

  </div>

  <div class="content project-footer">
  <div class="footer-section">
    <div class="logo-wrapper">
      <a href="/"><img src="/assets/images/quarkus_logo_horizontal_rgb_reverse.svg" class="project-logo" title="Quarkus"></a>
    </div>
  </div>
  <div class="grid-wrapper">
    <p class="grid__item width-3-12">Quarkus is open. All dependencies of this project are available under the <a href='https://www.apache.org/licenses/LICENSE-2.0' target='_blank'>Apache Software License 2.0</a> or compatible license.<br /><br />This website was built with <a href='https://jekyllrb.com/' target='_blank'>Jekyll</a>, is hosted on <a href='https://pages.github.com/' target='_blank'>Github Pages</a> and is completely open source. If you want to make it better, <a href='https://github.com/quarkusio/quarkusio.github.io' target='_blank'>fork the website</a> and show us what you’ve got.</p>

    
      <div class="width-1-12 project-links">
        <span>Navigation</span>
        <ul class="footer-links width-1-12">
          
            <li><a href="/">Home</a></li>
          
            <li><a href="/guides">Guides</a></li>
          
            <li><a href="/community/#contributing">Contribute</a></li>
          
            <li><a href="/faq">FAQ</a></li>
          
            <li><a href="/get-started">Get Started</a></li>
          
        </ul>
      </div>
    
      <div class="width-1-12 project-links">
        <span>Contribute</span>
        <ul class="footer-links width-1-12">
          
            <li><a href="https://twitter.com/quarkusio">Follow us</a></li>
          
            <li><a href="https://github.com/quarkusio">GitHub</a></li>
          
            <li><a href="/security">Security&nbsp;policy</a></li>
          
        </ul>
      </div>
    
      <div class="width-1-12 project-links">
        <span>Get Help</span>
        <ul class="footer-links width-1-12">
          
            <li><a href="https://groups.google.com/forum/#!forum/quarkus-dev">Forums</a></li>
          
            <li><a href="https://quarkusio.zulipchat.com">Chatroom</a></li>
          
        </ul>
      </div>
    

    
      <div class="width-3-12 more-links">
        <span>Quarkus is made of community projects</span>
        <ul class="footer-links">
          
            <li><a href="https://vertx.io/" target="_blank">Eclipse Vert.x</a></li>
          
            <li><a href="https://microprofile.io" target="_blank">Eclipse MicroProfile</a></li>
          
            <li><a href="https://hibernate.org" target="_blank">Hibernate</a></li>
          
            <li><a href="https://netty.io" target="_blank">Netty</a></li>
          
            <li><a href="https://resteasy.github.io" target="_blank">RESTEasy</a></li>
          
            <li><a href="https://camel.apache.org" target="_blank">Apache Camel</a></li>
          
            <li><a href="https://code.quarkus.io/" target="_blank">And many more...</a></li>
          
        </ul>
      </div>
    
  </div>
</div>
  <div class="content redhat-footer">
  <div class="grid-wrapper">
    <span class="licence">
      <i class="fab fa-creative-commons"></i><i class="fab fa-creative-commons-by"></i> <a href="https://creativecommons.org/licenses/by/3.0/" target="_blank">CC by 3.0</a> | <a href="https://www.redhat.com/en/about/privacy-policy">Privacy Policy</a>
    </span>
    <span class="redhat">
      Sponsored by
    </span>
    <span class="redhat-logo">
      <a href="https://www.redhat.com/" target="_blank"><img src="/assets/images/redhat_reversed.svg"></a>
    </span>
  </div>
</div>


  <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.4/jquery.min.js" integrity="sha384-8gBf6Y4YYq7Jx97PIqmTwLPin4hxIzQw5aDmUg/DDhul9fFpbbLcLh3nTIIDJKhx" crossorigin="anonymous"></script>
  <script type="text/javascript" src="/assets/javascript/mobile-nav.js"></script>
  <script type="text/javascript" src="/assets/javascript/scroll-down.js"></script>
  <script src="/assets/javascript/satellite.js" type="text/javascript"></script>
  <script src="https://quarkus.io/guides/javascript/config.js" type="text/javascript"></script>
  <script src="/assets/javascript/search-filter.js" type="text/javascript"></script>
  <script src="/assets/javascript/back-to-top.js" type="text/javascript"></script>
</body>

</html>
